import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router'
//

const req = require.context('.', true, /\.ts$/) //返回一个require函数

//所以就可以遍历这个数组，对每一个文件路径都进行提取暴露，之后把所有模块对象统一收集到一个地方
const routes: Array<RouteRecordRaw> = []
req.keys().forEach((path) => {
  if (path === './index.ts') return //如果是以自身为出发点，就排除掉自己

  //把路径名拆分，只留下没有后缀的文件名，作为模块对象的名字
  routes.push(req(path).default)
})

//最后把汇总后的对象暴露出去
// export default route;

const router = createRouter({
  history: createWebHistory(process.env.BASE_URL),
  routes,
  scrollBehavior() {
    // 始终滚动到顶部
    return { top: 0, left: 0, behavior: 'smooth' }
  },
})

export default router
